FE エンジニア向け k8s ガイド
k8s(kubernetes) はコンテナ化したアプリケーションのデプロイ、スケーリング、および管理を行うためのコンテナオーケストレーションシステムである。
keywords
コンテナ化したアプリケーション
デプロイ
スケーリング
管理
コンテナオーケストレーションシステム
コンテナ化したアプリケーション
一番人気は docker である
https://gyazo.com/f010d905e0cc19d46e7da3e65106947c
code:nuxt-Dockerfile.yaml
FROM node:12.16-alpine
ENV APP_DIR /nuxt/
WORKDIR ${APP_DIR}
COPY . ./
RUN yarn
RUN yarn build
ENV HOST 0.0.0.0
何故コンテナ化が必要だ?
僕は3つAppがある、
app1はnode 8を依存
app2はnode 12を依存
app3はnode 1.xを依存
コンテナ化したら、1環境に実行できる
OS > container layer > apps
今日の目標
Deploy a mongo-express app and mongo db.
UI:
https://gyazo.com/18464efe16a3e257f99a0885a78532e7
DB: mongo
主な作業
2 Deployments /Pods
2 Services
1 Secrets
1 ConfigMap
https://gyazo.com/efb70d1114488b306c82e42345f7c692
.env ファイルをやめて、Secret/ConfigMapに管理して
基本知識
k8s 中資源の単位
Pod
Node
Cluster
https://gyazo.com/740f7416e4311e0614fe3ce85339f53a
Deployment はPodとReplicaSetの宣言的なアップデート機能を提供する
Service はPodの集合で実行されているアプリケーションをネットワークサービスとして公開する抽象的な方法です。
htpp://128.
Secretはパスワード、トークン、キーのような小容量の機密データを含むオブジェクトです。
db の username / password
ConfigMapは、 機密性のないデータをキーと値のペアで保存するために使用されるAPIオブジェクトです。
db の service name
事前準備
docker desktop
minikube
kubectl
よく使う docker 命令
docker run/stop
docker ps
docker image
docker build
よく使う minikube 命令
minikube start / stop
minikube service xxx
よく使う kubectl 命令
kubectl create deployment/service
kebectl get deployments/pods/services
kubectl delete deployment/service
必要な設定ファイル
mongo-secret.yaml
mongo.yaml
valueFromでmongo-secretで定義した値を参照する
mongo-configmap.yaml
mongo-express.yaml
命令を実行
code:apply-commands
$ kubectl apply -f mongo-secret.yaml
$ kubectl apply -f mongo.yaml
$ kubectl apply -f mongo-configmap.yaml
$ kubectl apply -f mongo-express.yaml
確認
code:get-commands
$ kubectl get deployments
application
https://gyazo.com/4a7f56c58251cf7c999cac99134eac45
minikube dashboard
https://gyazo.com/6e3dab3c845ce55d86a2e397bcfd0e93
オートスケーリング
質問回答
terraform > k8s > docker
ECR (Elastic container register)はAWSのdocker hubです。
docker-compose もう使ってない。
ECSではない、EKSに k8s を実行する
👍 Yuki Agatsuma YukiAgatsuma.icon がいいねしました on 2021/2/24
👍 onuma onuma.icon がいいねしました on 2021/2/24